package Repositorios;

import java.util.ArrayList;

import ClassesBases.Conta;
import Exception.ContaInexistenteException;
import Interfaces.InterfaceRepositorioConta;

public class RepositorioContasArrayList implements InterfaceRepositorioConta {

	private static final String CONTA_EXISTE = "Conta já existe!";
	private static final String CONTA_CRIADA = "Conta criada!";
	private ArrayList<Conta> contas;
	private Conta conta;

	public RepositorioContasArrayList() {
		contas = new ArrayList<Conta>();
	}

	@Override
	public void inserir(Conta c) {
		if (!existe(c.getNumero())) {
			this.contas.add(c);
			System.out.println(CONTA_CRIADA);
		}else {
			System.out.println(CONTA_EXISTE);
		}
	}

	@Override
	public boolean existe(String num) {
		if (procurar(num) != null) {
			return true;
		}

		return false;
	}

	@Override
	public void atualizar(Conta c) {
		this.conta = procurar(c.getNumero());
		if (this.conta != null) {
			this.conta = c;
		}

	}

	@Override
	public Conta procurar(String num) {
		boolean achou = false;
		for (Conta conta : contas) {
			if (conta.getNumero().equals(num)) {
				achou = true;
				return conta;
			}
		}
		if (achou) {
		}
		return null;
	}

	@Override
	public void remover(String num) {
		this.conta = procurar(num);
		if(this.conta!=null){
			this.contas.remove(num);
		}

	}

}
